Part Number Hot Search : 
SMAJ12C TDA1549 DTA11 BT4855 FDS8936S TD3HJ13A 74AUP2 A1212
Product Description
Full Text Search
 

To Download AN3018 Datasheet File

  If you can't view the Datasheet, Please click here to try to view without PDF Reader .  
 
 


  Datasheet File OCR Text:
  september 2013 doc id 16081 rev 2 1/24 AN3018 application note developing self tests for spc564ax introduction spc564ax devices have been designed for powertrain applications like engine control and transmission. as these safety applications increasingly need to conform to safety standards like iec51608 or iso26262, there is a focus on self tests possible on each of the components of these ecus, including the microcontroller. this application note shows how to define and design self tests for spc564ax. after an introduction to self tests, the application note is focused initially on self tests for the cpu subsystem, then on those on digital peripherals and finally on those on analog peripherals. www.st.com
contents AN3018 2/24 doc id 16081 rev 2 contents 1 introduction to self tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 1.1 self tests for spc564ax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 2 designing software self tests fo r spc564ax . . . . . . . . . . . . . . . . . . . . . 7 2.1 spc564ax crc unit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 2.2 explicit and implicit self tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 3 self tests for spc564ax core subsystem . . . . . . . . . . . . . . . . . . . . . . . 10 3.1 flash self tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 3.1.1 flash integrity check . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 3.1.2 flash ecc logic check1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 3.1.3 flash ecc logic check2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 3.1.4 flash ecc logic check3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 3.1.5 flash address decoder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 3.1.6 flash margin mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 3.2 ram self tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 3.2.1 ram dormant fault check . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 3.2.2 ram ecc logic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 3.2.3 ram address decoder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 3.2.4 etpu code ram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 3.3 cpu parallel signature unit tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 4 self tests for spc564ax digital peripherals . . . . . . . . . . . . . . . . . . . . . 15 4.1 crc unit self tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 4.1.1 crc computing circuitry check . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 4.2 dma controller self tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 4.2.1 dma transfer logic check . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 4.3 crossbar self tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 4.4 memory protection self tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 4.5 peripheral bridge self tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 4.6 peripheral configuration self tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 4.6.1 peripheral configuration check . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 4.7 interrupt controller self tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
AN3018 contents doc id 16081 rev 2 3/24 4.7.1 interrupt controller logic check . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 4.8 flexcan self tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 4.8.1 flexcan check . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 4.9 esci self tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 4.9.1 esci loop back . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 4.10 emios self tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 4.10.1 emios check . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 4.11 decimation filter self tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 4.11.1 decimation filter check . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 4.12 eqadc logic self tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 4.12.1 eqadc effective conversion timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 4.13 summary for digital peripherals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 5 self tests for spc564ax analog peripherals . . . . . . . . . . . . . . . . . . . . . 20 5.1 oscillator self tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 5.1.1 oscillator check . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 5.2 fmpll self tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 5.2.1 fmpll check . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 5.3 eqadc self tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 5.3.1 eqadc internal reference check . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 5.3.2 analog input and adc mux check . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 5.3.3 analog input and adc mux check . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 5.4 supply monitor self tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 5.4.1 1.2 v monitor check . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 5.4.2 monitor check using eqadc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 5.5 summary for analog peripherals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 appendix a document management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 a.1 reference documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
list of tables AN3018 4/24 doc id 16081 rev 2 list of tables table 1. self tests for digital peripherals. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 table 2. self tests for analog peripherals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 table 3. document revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
AN3018 list of figures doc id 16081 rev 2 5/24 list of figures figure 1. crc unit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 figure 2. parallel signature unit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
introduction to self tests AN3018 6/24 doc id 16081 rev 2 1 introduction to self tests self tests can be used at two times of a safety application: at power on during run time power on self tests focus on latent fault detection. they usually cover all modules of a given microcontroller. run time self tests focus on single point of fa ilure detection during the application safety time. additionally, some modules may require a specific run time check (for example, adc monitor) to be done during run time, so that the fit rate can be guaranteed on those modules. 1.1 self tests for spc564ax the application note is focused on describing th e possible self tests that can be designed for spc564ax. the description given is intended to provide for different uses according to application requirements, such as power on or as run time self tests.
AN3018 designing software self tests for spc564ax doc id 16081 rev 2 7/24 2 designing software self tests for spc564ax spc564ax devices have been designed using th e latest test techniques. hence, they include several bists for logic and for memories (rams, flashes). although those bists cannot be activated by software, spc564ax devices have several hardware features enabling the design of fast and efficient self tests. 2.1 spc564ax crc unit the crc unit allows the design of several self tests. when combined with the use of edma, the self tests can be implemented without cpu load. this method is described in a specific application note. the figure below illustrates the princi ple of this method and shows concurrent accesses between cpu software using ram and flash together with the edma and crc unit.
designing software self tests for spc564ax AN3018 8/24 doc id 16081 rev 2 figure 1. crc unit note: the crc unit has 3 independent contexts to allow independent crc computing from cpu side (for example, adding applicable crc to data) and from edma. $'& $qdorjwr'ljlwdo&rqyhuwhu $'&l $'&lqwhuidfh $0 x[ $qdorj0xowlsoh[hu %$0 %rrw$vvlvw0rgxoh &5& &\folf5hgxqgdqf\&khfnxqlw '( & 'hflpdwlrq)lowhu '76 'hyhorsphqw7uljjhu6hpdskruh '63, 'hvhuldo6huldo3hulskhudo,qwhuidfh h'0 $ (qkdqfhg'luhfw0hpru\$ffhvv h0, 26 (qkdqfhg0rgxodu,qsxw2xwsxw6\vwhp h6& , (qkdqfhg6huldo&rppxqlfdwlrqv,qwhuidfh h738 6hfrqgjhq(qkdqfhg7lph3urfhvvlqj8qlw )oh[&$1 &rqwuroohu$uhd1hwzrun )oh[&$1 )03// )uhtxhqf\0rgxodwhg3kdvh/rfnhg/rrs -7$* ,(((7hvw&rqwuroohu 008 0hpru\0dqdjhphqw8qlw 038 0hpru\3urwhfwlrq8qlw 30& 3rzhu0dqdjhphqw&rqwuroohu 3,7 3hulrglf,qwhuuxsw7lphu 5&26 & /rzvshhg5&2vfloodwru 5($&0 5hdfwlrq0rgxoh 6,8 6\vwhp,qwhjudwlrq8qlw 63( 6ljqdo3urfhvvlqj([whqvlrq 65$0 6wdwlf5$0 670 6\vwhp7lphu0rgxoh 6:7 6riwzduh:dwfkgrj7lphu 9*$ 9duldeoh*dlq$psolilhu 9/( 9duldeoh/hqjwk lqvwuxfwlrq (qfrglqj ;26& ;7$/2vfloodwru /(*(1' h0,26  &kdqqho .%'dwd 5$ 0 .%&rgh 5$0 h738  7h p s  6 h q v $'&l '(& [ 9*$ $'& $'& $0x[ 0% )odvk .% 65 $0 038 &urvvedu6zlwfk ,qwhuuxsw &r qwuroohu h'0$ fkdqqho 63( 9/( 008  .%,fdfkh 3rzhu$ufklwhfwxuh h] -7$* 1h[xv ,(((,672  )oh[5d\ &doleudwlrq%xv,qwhuidfh )oh[&$1 [  ,2%ulgjh )03// &5& %$0 30& 670 3,7 6:7 6,8 $qdorj3// 5&26& ;26& 9rowdjh5hjxodwru 6wdqge\ 5hjxodwru zlwk6zlwfk '63, [  h6& ,[ 0 0 0 6 6 6 6 0 5($&0fk '76 'hexj &kdqqho *$3*&)7 &5&
AN3018 designing software self tests for spc564ax doc id 16081 rev 2 9/24 2.2 explicit and implicit self tests most ips can be checked with explicit tests. some, like the crossbar and the peripheral bridge, are tested implicitly through other self tests run on other modules.
self tests for spc564ax core subsystem AN3018 10/24 doc id 16081 rev 2 3 self tests for spc564ax core subsystem 3.1 flash self tests several flash tests can be implemented: ? flash integrity test ? flash ecc logic verification ? flash address decoder ? flash margin mode some spc564ax derivatives, like the 4 mb version, have two flash modules. the tests described below can be implemented on any of the flash modules in spc564ax devices. not having valid content in some of the memory locations of the sectors to be checked may lead to limitation to flash sectors that do not have eeprom data. this may happen for sectors or data sets in eeprom emulation area, as the programming or erasing may be interrupted. 3.1.1 flash integrity check principle: the flash integrity test uses a proprietary address sequence to compute a 32-bit signature over the flash content over selected flash sectors. the check includes user data bits but also the ecc bits. result: once the operation is completed, the results of the reads can be checked by reading the misr value (stored in umisr0-4), to determine if an incorrect read or ecc detection was noted. the internal misr calculator is a 32 bit register. the misr can be seeded to any value by initializing the umisr0-4 registers before starting the test. resource availability: the flash module is not available during this test. the 128-bit data, 16-bit ecc data and the single and double ecc errors of the two double words are therefore captured by the misr through five different read accesses at the same location. the whole check is done through five complete scans of the memory address space: 1. the first pass scans only bits 31-0 of each page. 2. the second pass scans only bits 63-32 of each page. 3. the third pass scans only bits 95-64 of each page. 4. the fourth pass scans only bits 127-96 of each page. 5. the fifth pass scans only the ecc bits (8 + 8) and the single and double ecc errors (2 + 2) of both double words of each page. the 128-bit data and the 16 ecc data are sampled before the eventual ecc correction, while the single and double error flags are sampled after the ecc evaluation. only data from existing and unlocked locations is captured by the misr. there is no restriction on the number of times the test can be performed. for more details on this test, please refer to device reference manual (see section a.1: reference documents ).
AN3018 self tests for spc564ax core subsystem doc id 16081 rev 2 11/24 3.1.2 flash ecc logic check1 principle: ecc logic can be checked by forcing the input of ecc logic: the 64 bits of data and the 8 bits of ecc syndrome can be forced in dividually through specific test registers. the test then uses the ecc logic to produce a corrected 64-bit word. result: the results of the ecc logic check can be verified by reading the 64-bit results of the corrected data in the flash umisrx registers. resource availability: the flash module is not available during this test. as this is test based on standard flash memory reads, there is no restriction on the number of times it can be performed. for more details on this test, please refer to device reference manual (see section a.1: reference documents ). 3.1.3 flash ecc logic check2 principle: program a flash location to generate a single bit error and do reads during power on or run time check. the procedure involves initially programming a memory location with 0xffff_ffff_ffff_fffa and then programming the same memory location with 0xaaaa_aaaa_aaaa_aaaa. the resulting me mory location will be 0xaaaa_aaaa_aaaa_aaaf with a dual bit error. result: a dual ecc error should be generated on bit0 and bit2. resource availability: the flash module remains available during this test. as this is test based on standard flash memory reads, there is no restriction on the number of times it can be performed. 3.1.4 flash ecc logic check3 principle: program a flash location to generate a single bit error and do reads during power on or run time check. the procedure involves initially programming a memory location with 0xffff_ffff_ffff_fffe and then programming the same memory location with 0xaaaa_aaaa_aaaa_aaaa. the resulting me mory location will be 0xaaaa_aaaa_aaaa_aaab. result: a single ecc error should be generated on bit0. resource availability: the flash module remains available during this test. as this is test based on standard flash memory reads, there is no restriction on the number of times it can be performed. 3.1.5 flash address decoder principle: although the flash address decoder is indirectly checked during run time by the proper execution of the application program, a specific test can be implemented by inserting, at several places in the flash address space, data with known content. a signature using the crc unit of spc564ax can be computed by reading the flash content at those places and writing them in the crc unit. the crc can be seeded to any value by initializing the crc before the test. result: once the test is completed, the signature in the crc unit can be compared with the reference signature.
self tests for spc564ax core subsystem AN3018 12/24 doc id 16081 rev 2 resource availability: the flash module is available during this test. there is no restriction on the number of times the test can be performed. 3.1.6 flash margin mode principle: margin read is provided as a factory programming check; it can only be used at 25c and only on a non-cycled flash. a direct read access may be performed at margin (either margin 0 or margin 1), on unlocked blocks. the ?margin read? operation makes it possible to unbalance the sense amplifiers, so that all the read accesses reduce the margin vs. ?0? (ut0.mrv = ?0?) or vs. ?1? (ut0.mrv = ?1?). result: the results of the margin reads can be checked by comparison with previously stored expected data. resource availability: the flash module is not available during this test. the test can be performed only a limited number of times (up to 10 times maximum). it should be reserved for oem factory test and is not recommended for use in the field. for more details on this test, please refer to device reference manual (see section a.1: reference documents ). 3.2 ram self tests three ram tests can be implemented: ? ram dormant fault test ? ram ecc logic verification ? ram address decode 3.2.1 ram dormant fault check principle: bit flip events in the ram are detected and corrected by the ecc. when a ram memory location is not read, bit flip events ma y cumulate and generate an incorrigible error. ram dormant fault check can be implemented by reading regularly the whole content of the ram using the dma controller. result: in case of error, an ecc event in the ram is generated. resource availability: the ram module is available during this test. 3.2.2 ram ecc logic ram ecc covers the main system ram. principle: the intent is to generate errors during data write cycles, so that subsequent reads of the corrupted address locations generate ecc events, either single-bit corrections or double-bit incorrigible erro rs that are terminated with an error response. ram ecc test is performed through the ecsm. the ecc error generation register is a 16-bit control register used to force the generation of single and double bit data inversions in the memories with
AN3018 self tests for spc564ax core subsystem doc id 16081 rev 2 13/24 ecc, most notably the ram. this c apability is provided for two purposes: ? it provides a software controlled mechanism for ?injecting? errors into the memories during data writes to verify the integrity of the ecc logic ? it provides a mechanism to allow testing of the software service routines associated with memory error logging result: after writing data with an erroneous ecc, the procedure involves reading back the data and checking for error detection with the right parameters (single error, double error, address of error). resource availability: once the ram locations with erroneous content have been written, the ram is available for the application. 3.2.3 ram address decoder principle: a specific test to check the ram decoder can be implemented by inserting, at several places in the ram address space, data with known content. a signature using the crc unit of spc564ax can be computed by re ading the ram content at those places and writing them in the crc unit. the crc can be seeded to any value by initializing the crc before the test. result: once the test is completed, the signature in the crc unit can be compared with the reference signature. resource availability: the ram module is available during this test. there is no restriction on the number of times the test can be performed. 3.2.4 etpu code ram principle: compute a signature over the etpu code ram during run time. once enabled (bits scmmisen=1 and bit vis=0 in eputmcr register), this check is performed continuously. result: the computed signature is automatically compared with a predefined signature in eptumisccmpr register. in case of mismatch, etpu can also assert a global exception interrupt indicating a global illegal state. resource availability: the etpu code ram is available during this test. 3.3 cpu parallel sign ature unit tests the cores of spc563mx and of spc564ax devices have integrated signature registers to enhance capabilities to de velop core self tests. to support applications requiring system integrity checking during operation, the zen core provides a parallel signature unit, which is capable of monitoring the cpu data read and data write ahb buses, and accumulating a pair of 32-bit misr signatures of the data values transferred over these buses.
self tests for spc564ax core subsystem AN3018 14/24 doc id 16081 rev 2 figure 2. parallel signature unit several cpu tests can be implemented: ?register test ? arithmetic and logic unit test ? control flag test ? branch test the parallel, available on any spc564ax variant, allows the acceleration of the tests by computing a signature and avoiding single register comparison to an external reference. principle: use software based tests to check the cpu core. instead of comparing cpu registers to a reference, use the crc unit to compute a signature by writing the register content to the crc unit. the crc can be seeded to any value by initializing the crc before the test. result: once the test is completed, the signature in the crc unit can be compared with the reference signature. resource availability: the cpu module is available duri ng this test. interrupts should be masked during the execution of the test as the content of the parallel signature unit would be modified during the execution of the interrupt routine.  gt  gt  gt  gt  gt  gt  gt  gt  gt   ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' 36+5 36/5 'dwd%xv sbgbkugdwdsbgbkzgdwd 1rwh 8sgdwhvgxhwrtxdolilhgexvwudqvihuvduhvxssuhvvhg iruwkhgxudwlrqridghexjvhvvlrq *$3*&)7
AN3018 self tests for spc564ax digital peripherals doc id 16081 rev 2 15/24 4 self tests for spc564ax digital peripherals 4.1 crc unit self tests the crc unit is an essential mo dule in the safety concept of spc564ax. it is made of two submodules with independent register sharing the same computing circuitry. crc check should implement: ? register check ? computing circuitry check 4.1.1 crc computi ng circuitry check principle: the computing circuitry can be checked by computing a crc over the entire flash content. the dma controller can also be used to accelerate the test and execute it concurrently with cpu initialization. result: once the test is completed, the signature in the crc unit can be compared with the reference signature. resource availability: the crc module is not av ailable during this test. 4.2 dma controller self tests the dma controller is also an essential module in the safety concept of spc564ax. it is made of 16 channel transfer descriptor registers sharing the same transfer logic. dma check should implement ? register check ? transfer logic check 4.2.1 dma transfer logic check principle: the dma transfer logic can be checked by means of complex transfer sequences. if the application implements a peripheral configuration check using dma and crc, the proposal is to have an implicit check using this test. result: once the test is completed, the signature in the crc unit can be compared with the reference signature. resource availability: the dma module is available during this test. only one channel can be used by this test. 4.3 crossbar self tests spc564ax crossbar has a limited number of registers. once configured properly, the crossbar can be checked using implicit tests. the crossbar can be implicitly tested when the following self tests have been implemented: ? peripheral configuration check (see below) ? flash and ram check
self tests for spc564ax digital peripherals AN3018 16/24 doc id 16081 rev 2 4.4 memory protection self tests spc564ax mpu is implemented using registers defining memory ranges and comparators. in most safety applications, it is an important pa rt of the safety concept as it isolates critical data from non critical data. the mpu can be explic itly tested using: ?register test ? functional tests 4.5 peripheral bridge self tests spc564ax peripheral bridge does not have a configuration register. it can be checked using implicit tests. the peripheral can be implicitly tested when the peripheral configuration self tests have been implemented (see below). 4.6 peripheral configuration self tests peripheral configuration check allows the implementation of two types of tests on peripherals: ? power on tests (latent fault monitor), by checking the value of each initialized register ? run time test, by checking the value of configuration registers with a fixed content 4.6.1 peripheral configuration check principle: use the scatter/gather mode of the dma controller, to chain several transfer sequences, which read the peripheral registers to be checked and write them to the crc unit to compute a signature. the crc can be seeded to any value by initializing the crc before the test. result: once the test is completed, the signature in the crc unit can be compared with the reference signature. resource availability when run as power on test: peripherals being checked are not available during this test. resource availability when run as run time test: peripherals being checked are available during this test. this check makes intensive use of the peripheral bridge and dma state machines (address generator, chaining of dma transfers). 4.7 interrupt controller self tests the interrupt controller plays an important role in an spc564ax application. interrupt controller check should implement: ? register check ? logic circuitry check
AN3018 self tests for spc564ax digital peripherals doc id 16081 rev 2 17/24 4.7.1 interrupt controller logic check principle: the interrupt controller has a register to store the base address of the interrupt vectors. the interrupt controller logic can be checked by defining a specific interrupt table for the self tests. software configurable interrupt sources can then be used to generate an interrupt request. nesting and priority management can be checked by enabling those software configurable sources during selected interrupt routines. result: self test software dependent. resource availability: the interrupt controller is not available during this test. note: as interrupt controller is checked using software based tests, more complex self tests can be generated if required. 4.8 flexcan self tests flexcan module has a loop back mode. this mode can be used to implement a self test. this test will exercise the protocol engine of the flexcan. 4.8.1 flexcan check principle: use the loop back mode of flexcan module to send and receive data without sending it over the can network. result: transmitted message is received by flexcan and the content of the message (message id, message payload) can be compared to known value(s). resource availability: flexcan is not available during this test. 4.9 esci self tests a loop back mode is available. 4.9.1 esci loop back principle: esci can be put in loop back mode by setting bit ?loops? and clearing bit ?rsrc? of register scicr1. in loop back mode, the esci treats its own transmitted messages as received messages. result: transmitted message is received by esci and the content of the message can be compared to known value(s). resource availability: esci is not available during this test. 4.10 emios self tests emios module generates real time input output events, such as, counting, capture, compare. this module can be checked using the etpu. 4.10.1 emios check principle: use the etpu to capture the characteristics of some emios channels.
self tests for spc564ax digital peripherals AN3018 18/24 doc id 16081 rev 2 result: the captured value in etpu must be compared to the known emios characteristics by taking account the prescaler factor used for emios and etpu. resource availability: this test requires allocation of etpu channels for the check. 4.11 decimation filter self tests the decimation filter is able to perform computation on eqadc results. this module can be checked using inputs from cpu or edma. 4.11.1 decimation filter check principle: use cpu or edma to write inputs to the decimation filter. result: check results of the decima tion filter at several stages of the ?test filter? computation. resource availability: the decimation filter is not available during this test. 4.12 eqadc logic self tests eqadc logic can influence the conversion result s if it generates an incorrect sampling time and/or an incorrect conversion time. self tests should implement: ?register test ? effective eqadc conversion timing 4.12.1 eqadc effective conversion timing principle: configure the eqadc trigger unit to generate two consecutive adc conversions with time stamping for each conversion. result: the captured time stamps in eqadc results must be compared to the known effective times of adc conversion. resource availability: this test does not require specific resource provided a trigger is available for this test.
AN3018 self tests for spc564ax digital peripherals doc id 16081 rev 2 19/24 4.13 summary for digital peripherals the table below summarizes the self tests for digital peripherals. table 1. self tests for digital peripherals module self test comments cpu core use software based tests. crc unit can be used to accelerate result verification. etpu core use software based tests. - flash flash integrity test. flash ecc logic verification. flash address decoder. flash margin mode. - ram ram dormant fault test. ram ecc logic verification. ram address decode. - interrupt controller use an alternate vector table for interrupt controller self tests. - peripheral configuration use dma and crc unit to compute a signature on all initialized registers. use dma and crc unit to compute a signature on registers with static configuration. - dma explicit test on registers. implicit test if peripheral configuration self test is implemented. - crc explicit test on registers. implicit test if peripheral configuration self test is implemented. - crossbar implicit test if flash, ram and peripheral configuration checks are implemented. - mpu explicit test on register and functional tests. - peripheral bridge implicit test if peripheral configuration self test is implemented. - emios use etpu to capture signal from emios. - adc logic use eqadc time stamping to capture effective time of conversions. - flexcan loop back. - esci loop back. - decimation filter use cpu instead of eqadc as source for operands. -
self tests for spc564ax analog peripherals AN3018 20/24 doc id 16081 rev 2 5 self tests for spc564ax analog peripherals 5.1 oscillator self tests the oscillator of each spc564ax variant can be checked with the clock quality monitor. 5.1.1 oscillator check principle: use the clock quality monitor to check the crystal clock. result: use status bit in clock monitor to detect a loss of clock (or use interrupt). resource availability: the crystal clock is available during this test. 5.2 fmpll self tests spc564ax devices have 1 fmpll. 5.2.1 fmpll check principle: use the clock quality monitor to check the fmpll. result: use status bit in clock monitor to detect a loss of lock (or use interrupt). resource availability: the fmpll is available during this test. 5.3 eqadc self tests spc564ax devices have two adcs with their own logic, which share the same analog supply and reference. 5.3.1 eqadc internal reference check principle: spc564ax analog multiplexers have several internal signals available for self tests: internal bandgap, vref/2, vref/4, 3/4 x vref. result: obtained by checking the adc conversion result. resource availability: the adc is available during this test. 5.3.2 analog input and adc mux check principle: each eqadc has its own independent analog mux. use the two adcs to convert the same analog input. result: obtained by checking the adc conversion result from each adc. resource availability: excluding the time needed for conversion, adc are available during this test. 5.3.3 analog input and adc mux check principle: fault (open, short) in the adc analog input of the differential inputs and adc mux can be detected by using the pull up and pull down integrated in the eqadc.
AN3018 self tests for spc564ax analog peripherals doc id 16081 rev 2 21/24 result: obtained by checking the adc conversion result of the selected differential input. resource availability: selecting pull up and pull down may affect the precision of regular conversions performed during the time they are activated. 5.4 supply monitor self tests spc564ax devices have supply monitors for 5 v, 3.3 v (internally generated) and 1.2 v. the 1.2 v monitor is testable. 5.4.1 1.2 v monitor check principle: reset or interrupt can be selected for a 1.2 v loss. by enabling interrupt and changing the trimmed value and its threshold, it is possible to test the 1.2 v monitor. result: a 1.2 v error is reported when the threshold of the monitor is set lower than 1.2 v. resource availability: 1.2 v monitor is not available during this test. 5.4.2 monitor check using eqadc principle: the analog multiplexer allows for convertion of any of the supplies (5 v, 3.3 v, 1.2 v). this also includes the reference voltage for 1.2 v. result: obtained by checking the adc conversion result. resource availability: all lvis should be disabled during this test. note that the 1.2 v is derived from a reference independent of the adc vref, so that the 1.2 v check with adc allows checki ng of the adc reference voltage. 5.5 summary for analog peripherals the table below summarizes the self tests for analog peripherals. table 2. self tests for analog peripherals module self test comments pll use cqm - adc adc reference check, adc mux and analog input check - 1.2 v monitor change the 1.2 v threshold. - pmc use adc to measure the supplies (5 self tests for analog peripherals , 3.3 v, 1.2 v) - oscillator use cqm -
document management AN3018 22/24 doc id 16081 rev 2 appendix a document management a.1 reference documents spc564a70b4, spc564a70l7 32-bit mcu family built on the embedded power architecture ? (reference manual rm0068, doc id 18132) spc564a80b4, spc564a80l7 32-bit mcu family built on the embedded power architecture ? (reference manual rm0029, doc id 15177)
AN3018 revision history doc id 16081 rev 2 23/24 revision history table 3. document revision history date revision changes 15-may-2012 1 initial release 17-sep-2013 2 updated disclaimer
AN3018 24/24 doc id 16081 rev 2 please read carefully: information in this document is provided solely in connection with st products. stmicroelectronics nv and its subsidiaries (?st ?) reserve the right to make changes, corrections, modifications or improvements, to this document, and the products and services described he rein at any time, without notice. all st products are sold pursuant to st?s terms and conditions of sale. purchasers are solely responsible for the choice, selection and use of the st products and services described herein, and st as sumes no liability whatsoever relating to the choice, selection or use of the st products and services described herein. no license, express or implied, by estoppel or otherwise, to any intellectual property rights is granted under this document. i f any part of this document refers to any third party products or services it shall not be deemed a license grant by st for the use of such third party products or services, or any intellectual property contained therein or considered as a warranty covering the use in any manner whatsoev er of such third party products or services or any intellectual property contained therein. unless otherwise set forth in st?s terms and conditions of sale st disclaims any express or implied warranty with respect to the use and/or sale of st products including without limitation implied warranties of merchantability, fitness for a particul ar purpose (and their equivalents under the laws of any jurisdiction), or infringement of any patent, copyright or other intellectual property right. st products are not designed or authorized for use in: (a) safety critical applications such as life supporting, active implanted devices or systems with product functional safety requirements; (b) aeronautic applications; (c) automotive applications or environments, and/or (d) aerospace applications or environments. where st products are not designed for such use, the purchaser shall use products at purchaser?s sole risk, even if st has been informed in writing of such usage, unless a product is expressly designated by st as being intended for ? automotive, automotive safe ty or medical? industry domains according to st product design specifications. products formally escc, qml or jan qualified are deemed suitable for use in aerospace by the corresponding governmental agency. resale of st products with provisions different from the statements and/or technical features set forth in this document shall immediately void any warranty granted by st for the st product or service described herein and shall not create or extend in any manner whatsoev er, any liability of st. st and the st logo are trademarks or registered trademarks of st in various countries. information in this document supersedes and replaces all information previously supplied. the st logo is a registered trademark of stmicroelectronics. all other names are the property of their respective owners. ? 2013 stmicroelectronics - all rights reserved stmicroelectronics group of companies australia - belgium - brazil - canada - china - czech republic - finland - france - germany - hong kong - india - israel - ital y - japan - malaysia - malta - morocco - philippines - singapore - spain - sweden - switzerland - united kingdom - united states of america www.st.com


▲Up To Search▲   

 
Price & Availability of AN3018

All Rights Reserved © IC-ON-LINE 2003 - 2022  

[Add Bookmark] [Contact Us] [Link exchange] [Privacy policy]
Mirror Sites :  [www.datasheet.hk]   [www.maxim4u.com]  [www.ic-on-line.cn] [www.ic-on-line.com] [www.ic-on-line.net] [www.alldatasheet.com.cn] [www.gdcy.com]  [www.gdcy.net]


 . . . . .
  We use cookies to deliver the best possible web experience and assist with our advertising efforts. By continuing to use this site, you consent to the use of cookies. For more information on cookies, please take a look at our Privacy Policy. X